SAS® Life Science Analytics Framework (LSAF) API release 1.8.2 is available for use with LSAF Version 4.7.3 or 4.7.4.
The table below lists the issues which have been addressed in LSAF API release 1.8.2:
SAS Note Number | Title |
60749 | isMember method takes implicit membership into account when determining membership |
60986 | RepositoryResourceService method undoCheckout fails when checked out file is owned by another user |
62458 | lsaf_markforaddandcheckin results in an exception if file marked for add and not checked in |
63851 | Error occurs when individual member added to project permission area and API user lacks privilege |
63866 | Signal information from completed signal events is not returned in completed process flow elements |
64014 | Security enhancements |
For reference purposes, the Release Notes for LSAF API Release 1.8.1 are included below:
The table below contains defects that have been fixed in the LSAF API release 1.8.1.
Title |
Description |
---|---|
JobService: createJobInWorkspace methods require parent path to start with /SAS. |
The createJobInWorkspace methods would fail with a ResourceNotFoundException if the parent path did not start with /SAS. This restriction has been removed. |
BatchResourceService: uploadAndExpand returns an error if the ZIP file provided contains a path with an ampersand (&). |
If uploadAndExpand is called with a ZIP file containing a path that has an ampersand (&), the files upload to the system, but the ActionStatus returned indicates an error retrieving action status. As of API release 1.8.1, the ActionStatus returned indicates a successful upload. |
The table below describes changes to the LSAF API in release 1.8:
Title |
Description |
---|---|
Change current user password |
The method, changePassword, has been added to the UserService to allow changing the current user’s password. |
Check for privilege at context |
The method, hasPrivilegeAtContext, has been added to the RoleAssignmentService to check if a principal has a privilege at a context. |
ProcessFlowService |
The new ProcessFlowService provides methods to manage process flows. With this service, a user can:
|
Support encrypted passwords |
The method, encryptPassword, has been added to the UserService to support encrypting unencrypted passwords. The encrypted password can be used to log on to the system through the API only. |
User license type |
AccountInfo, available on the User object, now surfaces license type information. |
External authentication |
The following methods have been added to the UserService to support external authentication:
Note the AccountInfo, setAuthenticator, and setAuthenticatorUsername methods have been deprecated as this information must be set by the new service methods above. |
Run and populate job |
The method, submitJobInWorkspaceAndPopulate, has been added to the JobExecutionService to support running a job and updating the input and output specifications based on inputs and outputs accessed during job execution. |
Manage copy to workspace behavior |
The methods, getSyncable, and setSyncable, are now available on repository items. This value allows users to control copy behavior from the repository to the workspace. |
Get checked out files |
Query methods for retrieving a list of checked out files is now available on the RepositoryResourceService. It allows querying by user ID, name, and location. |
SasSessionService |
The new SasSessionService provides methods for managing SAS Sessions. With this service, a user can:
|
Recycle bin querying |
The RecycleBinService now contains methods for querying recycle bin items. Recycle bin items can now be queried by name, path, date, and deletedBy. |
Job manifest support |
The JobExecutionService now provides a way to access job manifests by path or by job submission. The following methods have been added:
|
Search Service |
The new SeachService provides a way to query repository items. Repository items can be queried by location, name, object type, owner, modified date, modified by, created date, created by, and synchronization status. File content searches are also supported. |
Get absolute path |
The RelativePathUtility now provides the method, getAbsolutePath, to get the absolute path based on a base path and a relative path. |
GroupService isMember |
The GroupService method, isMember, now has a new parameter, which allows to specify whether to check for explicit or implicit membership. Note the old isMember method has been deprecated. |
ParameterValue equals method change |
The equals method on ParameterValue has been changed from checking name and value to check only name. |
The table below contains defects that have been fixed in the LSAF API release 1.8.
Title |
Description |
---|---|
RepositoryResourceService: Enable and disable versioning comment not shown in audit trail |
The comment parameter provided in the enableVersioningOnFile and disableVersioningOnFile methods was not showing up in the audit trail for the corresponding action. It is now correctly displayed in the audit trail in API release 1.8. |
RepositoryResourceService: undoCheckout fails if undo check-out on file owned by another user |
If the undoCheckout method was called on a file owned by another user, the call would fail with a RepositoryResourceUndoCheckoutException saying it could not undo the check-out. As of API release 1.8, you can successfully undo check-out a file owned by another user. |
WorkspaceResourceService: create file and upload and expand fail at workspace root |
Calling the WorkspaceResourceService createFile method with file path in root (ex: /file.txt) results in an IllegalArgumentException. Similarly, calling the BatchWorkspaceResourceService uploadAndExpand method with folder path root (/) fails with an action status reflecting a ZIP error. Both of these issues have been fixed and you can successfully create a file and upload and expand files in workspace root in API release 1.8. |
The table below contains known limitations in the LSAF API release 1.8.
Title |
Description |
---|---|
SASSessionService: Cannot open log or lst for session whose owner has an invalid account |
If a user tries to access the log or listing for a SAS session whose owner does not have an active user account, you get a message saying that user is not authorized to view the file for that session. This occurs if the owner account is inactive, locked, or password is expired. This is a limitation in LSAF version 4.7.1 and is going to be addressed in a future release. See Problem Note 59938: SAS Life Science Analytics Framework 4.7.1 - Cannot open log or lst for a SAS Session whose owner does not have a valid account for more details. |
RoleAssignmentService: hasPrivilegeAtContext method for a subgroup is returning the incorrect value temporarily because of a caching problem |
If you add or remove a subgroup that has a privilege assigned by a role, when you call hasPrivilegeAtContext for that subgroup, the incorrect value is returned temporarily. It returns the correct value once the cache is correctly updated that is typically 20 minutes. |
Product Family | Product | System | Product Release | SAS Release | ||
Reported | Fixed* | Reported | Fixed* | |||
SAS System | SAS Life Science Analytics Framework | Linux for x64 | 4.7.1 | 4.7.3 | 9.4 TS1M3 | 9.4 TS1M3 |
Type: | Installation Note |
Priority: | high |
Date Modified: | 2019-05-07 09:41:56 |
Date Created: | 2019-03-26 17:12:08 |